docs(rest): state what the genericDeclared docblock's file actually holds - #16504
Merged
os-sales merged 2 commits intoSep 7, 2026
Merged
Conversation
… holds The docblock claimed reachability of the generic passthrough "is asserted rather than assumed", but nothing in the file asserts it — §1 reads only the two doors' answers, never `structuredCodeAnswer`'s arms. A bespoke arm added later for one of §1's codes would leave those cases green while they quietly measure the bespoke path instead. Replace the claim with what measurement shows actually holds it: a hand-run ablation (naming the limb to delete), the three sibling pins that redden with it, and the measured limit that §3 keys on one of §1's own codes and so migrates along with it. Comment-only; no behaviour change. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YFY46JydE1gMxQG1TqBcMZ
…neric-declared-reachability-claim
Contributor
📓 Docs Drift CheckNothing in this diff resolved to a documentable surface (no symbol, route or SDK anchor derived from 0 changed package(s)), so this run has no opinion about the docs. What this run could not see
Coarse fallback — 0 page(s) merely mention a changed package (the pre-#9192 predicate, kept for the deliberately-wide backstop): |
os-sales
marked this pull request as ready for review
September 7, 2026 05:40
os-sales
enabled auto-merge
September 7, 2026 05:40
os-sales
deleted the
claude/issue-15615-generic-declared-reachability-claim
branch
September 7, 2026 06:15
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #15615
What the docblock claimed, and what the file holds
genericDeclared's docblock said reachability of the generic passthrough "is asserted rather than assumed". Nothing in the file asserts it: §1 reads only the two doors'status,code, body equality and theobjectkey — neverstructuredCodeAnswer's arms. The claim described a property the file does not hold.Per the ruling on the card, this takes option 1 — correct the claim — and ⛔ not option 2 (making §1 assert the absence of an arm), which pins an absence: the shape that goes stale in the other direction.
The premise was re-derived, not inherited
The card's premise — the three sibling pins independently exercise the generic-passthrough limb — was measured by the at-tier reviewer on PR #15452's head
e141d14adb, and neither the filing nor the dispatching seat re-ran it. Re-derived here on currentorigin/main.Ablation A — delete
resolveErrorResponse's generic 4xx...(object ? { object } : {})limb. Baseline 63/63 pass; ablated 7 fail:DUPLICATE_RECORD/RECORD_LOCKED/FORBIDDEN/handleRouteErrorobject"⇒ The premise holds. All three siblings redden independently of §1.
Ablation B — the card's feared future, simulated. Insert a bespoke
RECORD_LOCKEDarm intostructuredCodeAnswerand delete the limb. §1'sRECORD_LOCKEDcase and §3's sniff case both go GREEN — they migrated onto the bespoke path, exactly the silent re-purposing the card describes. §2 and #14541 §4 stay RED.⇒ a measured refinement the card did not have: §3 keys on
RECORD_LOCKED, one of §1's own codes, so it migrates with §1. Only §2 and #14541 §4 are independent of §1's codes. The new docblock states that limit rather than repeating "three siblings" flatly — hedging there would reproduce the defect in a quieter voice. Ablation B also reddens #14541 §5's "every arm in the SHARED classification has a §1 parity case", so an arm's arrival is caught — but that guard goes green again once its author adds the parity case it asks for, which is why it does not hold this file's §1 to the passthrough.Ablation hygiene: each leg proved the mutation on disk before its colour was read (limb occurrences 13 to 12; blob hash moved), restored with
git checkout HEAD -- PATHand verified byte-equal to the HEAD blob, withgit statusclean afterwards.Scope
Comment-only, one file, no behaviour change. The invariant was never at risk — this card is about the claim, not the coverage.
Verification
dispatch-gates.mjsReconciliation total: 45/45 green. The Artifact rosters block was run separately (it sits outside that union): 36/39 green, 3 NOT MEASURED and none a finding against this diff —check-partof-closing-keywordandcheck-single-claim-pathsboth printNOT WIREDwithout PR context, andcheck:react-declaration-parityneeds an objectuisdui.manifest.jsonthis repo does not contain.check:type-check-debtfirst exited 3 (PREREQUISITE NOT MET— a tsc OOM; the gate's own text says nothing was measured and it is not a finding). Re-run at--max-old-space-size=8192: exit 0, "5 ledger entr(ies) re-measured ... none above its recorded number."@objectstack/rest: 187 test files / 3179 tests pass;typecheckgreen (check:test-typecheck: OK), and the edited file is confirmed insidetsconfig.test.json's program viatsc --listFiles.pnpm lintgreen — the full union atad1c79f7, not a narrowed run.turbo ls --affectednames 18 packages; only@objectstack/restchanged content. The other 17 are dependents reached by package-level hashing over a comment with no API-surface change — declared narrowing, CI runs the farm.packages/restpublishes["dist","README.md","CHANGELOG.md"], so a test-file comment releases nothing ⇒skip-changeset, route 2 and the workflow's PREFERRED route.packages/spec/src/**path.验收备注
无范围外发现。本次改动为单文件注释,未触及任何运行时路径。
Generated by Claude Code